<!DOCTYPE html>
<html>
<head>
	<meta charset="utf-8">
	<title>用户列表</title>
	<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
	<link rel="stylesheet" href="__ADMIN_STATIC__/css/oksub.css">
	<script type="text/javascript" src="__STATIC__/lib/loading/okLoading.js"></script>
</head>
<body>
<div class="ok-body">

	<!--模糊搜索区域-->
	<div class="layui-row">
		<form class="layui-form layui-col-md12 ok-search">
			<input class="layui-input" placeholder="开始日期" autocomplete="off" id="startTime" name="start_time">
			<input class="layui-input" placeholder="截止日期" autocomplete="off" id="endTime" name="end_time">
			<input class="layui-input" placeholder="用户名/昵称" autocomplete="off" name="name">
			<button class="layui-btn" lay-submit="" lay-filter="search">
				<i class="layui-icon layui-icon-search"></i>
			</button>
		</form>
	</div>
	<!--数据表格-->
	<table class="layui-hide" id="tableId" lay-filter="tableFilter"></table>
</div>
<!--js逻辑-->
<script src="__STATIC__/lib/layui/layui.js"></script>
<script>
	layui.use(["table", "form", "laydate", "okLayer", "okUtils", "okMock"], function () {
		let table = layui.table;
		let form = layui.form;
		let util = layui.util;
		let laydate = layui.laydate;
		let okLayer = layui.okLayer;
		let okUtils = layui.okUtils;
		let okMock = layui.okMock;
		okLoading.close();
		util.fixbar({});

		laydate.render({elem: "#startTime", type: "datetime"});
		laydate.render({elem: "#endTime", type: "datetime"});

		let articleTable = table.render({
			elem: "#tableId",
			url: "{:url('user/list')}",
			limit: 20,
			page: true,
			even: true,
			toolbar: "#toolbarTpl",
			size: "lg",
			cols: [[
				{field: "id", title: "ID", width: 120, sort: true},
				{field: "username", title: "用户名称", width: 150},
				{field: "nickname", title: "昵称", width: 150},
				{field: "status", title: "状态", width: 100},
				{field: "articles_count", title: "文章数目", width: 100},
				{field: "email", title: "邮箱", width: 150},
				{field: "mobile", title: "手机号", width: 150},
				{field: "avatar", title: "用户头像", width: 180, templet: "#logoTpl"},
				{field: "last_time", title: "最后登录时间", width: 180},
				{field: "create_time", title: "创建时间", width: 180},
				{field: "update_time", title: "更新时间", width: 180},
				{title: "操作", width: 100, align: "center", fixed: "right", templet: "#operationTpl"}
			]],
			done: function (res, curr, count) {
				console.log(res, curr, count)
			}
		});

		form.on("submit(search)", function (data) {
			articleTable.reload({
				where: data.field,
				page: {curr: 1}
			});
			return false;
		});

		table.on("toolbar(tableFilter)", function (obj) {
			if (obj.event === 'add'){
				return add();
			}
		});

		table.on("tool(tableFilter)", function (obj) {
			let data = obj.data;
			switch (obj.event) {
				case "updateById":
					updateById(data.id);
					break;
				case "deleteById":
					deleteById(data.id);
					break;
				case "assignmentById":
					assignmentById(data.id);
					break;
			}
		});




		function add() {
			okLayer.open("添加用户", "{:url('user/create')}", "90%", "90%", null, function () {
				articleTable.reload();
			})
		}

		function updateById(id) {
			okLayer.open("编辑用户", "{:url('user/edit')}?id=" + id, "90%", "90%", null, function () {
				articleTable.reload();
			})
		}
		function assignmentById(id) {
			okLayer.open("分配角色", "{:url('user/assignment')}?id=" + id, "90%", "90%", null, function () {
				articleTable.reload();
			})
		}

		function deleteById(id) {
			okLayer.confirm("确定要删除吗？", function () {
				okUtils.ajax("{:url('user/delete')}", "delete", {id: id}).done(function (response) {
					okUtils.tableSuccessMsg(response.msg);
				}).fail(function (error) {
					console.log(error);
				});
			})
		}
	})
</script>
<!-- 头工具栏模板 -->
<script type="text/html" id="toolbarTpl">
	<div class="layui-btn-container">
		<button class="layui-btn layui-btn-sm" lay-event="add">添加用户</button>
	</div>
</script>
<!-- 行工具栏模板 -->
<script type="text/html" id="operationTpl">
	<a href="javascript:" title="分配角色" lay-event="assignmentById"><i class="layui-icon">&#xe770;</i></a>
	<a href="javascript:" title="编辑" lay-event="updateById"><i class="layui-icon">&#xe642;</i></a>
	<a href="javascript:" title="删除" lay-event="deleteById"><i class="layui-icon">&#xe640;</i></a>
</script>

<script type="text/html" id="logoTpl">
	{{#  if(d.avatar){ }}
	<image src="{$urlBase}{{d.avatar}}"/>
	{{#  } else { }}
	<image src="{$default_avatar}"/>
	{{#  } }}
</script>

</body>
</html>

